Appendix C History and
acknowledgments
C.1 From Carsten
Org was born in 2003, out of frustration over the user
interface of the Emacs Outline mode. I was trying to organize my
notes and projects, and using Emacs seemed to be the natural way
to go. However, having to remember eleven different commands with
two or three keys per command, only to hide and show parts of the
outline tree, that seemed entirely unacceptable to me. Also, when
using outlines to take notes, I constantly wanted to restructure
the tree, organizing it parallel to my thoughts and plans.
Visibility cycling and structure editing were
originally implemented in the package
outline-magic.el, but quickly moved to the more
general org.el. As this environment became
comfortable for project planning, the next step was adding
TODO entries, basic timestamps, and table
support. These areas highlighted the two main goals that Org
still has today: to be a new, outline-based, plain text mode with
innovative and intuitive editing features, and to incorporate
project planning functionality directly into a notes file.
Since the first release, literally thousands of emails to me
or to emacs-orgmode@gnu.org have
provided a constant stream of bug reports, feedback, new ideas,
and sometimes patches and add-on code. Many thanks to everyone
who has helped to improve this package. I am trying to keep here
a list of the people who had significant influence in shaping one
or more aspects of Org. The list may not be complete, if I have
forgotten someone, please accept my apologies and let me
know.
Before I get to this list, a few special mentions are in
order:
- Bastien Guerry
-
Bastien has written a large number of extensions to Org
(most of them integrated into the core by now), including the
LaTeX exporter and the plain list parser. His support during
the early days, when he basically acted as co-maintainer, was
central to the success of this project. Bastien also invented
Worg, helped establishing the Web presence of Org, and
sponsored hosting costs for the orgmode.org website.
- Eric Schulte and Dan Davison
-
Eric and Dan are jointly responsible for the Org-babel
system, which turns Org into a multi-language environment for
evaluating code and doing literate programming and
reproducible research.
- John Wiegley
-
John has contributed a number of great ideas and patches
directly to Org, including the attachment system
(org-attach.el), integration with Apple Mail
(org-mac-message.el), hierarchical dependencies
of TODO items, habit tracking (org-habits.el),
and encryption (org-crypt.el). Also, the capture
system is really an extended copy of his great
remember.el.
- Sebastian Rose
-
Without Sebastian, the HTML/XHTML publishing of Org would
be the pitiful work of an ignorant amateur. Sebastian has
pushed this part of Org onto a much higher level. He also
wrote org-info.js, a Java script for displaying
web pages derived from Org using an Info-like or a folding
interface with single-key navigation.
See below for the full list of contributions! Again, please
let me know what I am missing here!
C.2 From Bastien
I (Bastien) have been maintaining Org since January 2011. This
appendix would not be complete without adding a few more
acknowledgements and thanks to Carsten’s ones above.
I am first grateful to Carsten for his trust while handing me
over the maintainership of Org. His unremitting support is what
really helped me getting more confident over time, with both the
community and the code.
When I took over maintainership, I knew I would have to make
Org more collaborative than ever, as I would have to rely on
people that are more knowledgeable than I am on many parts of the
code. Here is a list of the persons I could rely on, they should
really be considered co-maintainers, either of the code or the
community:
- Eric Schulte
-
Eric is maintaining the Babel parts of Org. His reactivity
here kept me away from worrying about possible bugs here and
let me focus on other parts.
- Nicolas Goaziou
-
Nicolas is maintaining the consistency of the deepest
parts of Org. His work on org-element.el and
ox.el has been outstanding, and opened the doors
for many new ideas and features. He rewrote many of the old
exporters to use the new export engine, and helped with
documenting this major change. More importantly (if
that’s possible), he has been more than reliable during
all the work done for Org 8.0, and always very reactive on
the mailing list.
- Achim Gratz
-
Achim rewrote the building process of Org, turning some
ad hoc tools into a flexible and conceptually clean
process. He patiently coped with the many hiccups that such a
change can create for users.
- Nick Dokos
-
The Org mode mailing list would not be such a nice place
without Nick, who patiently helped users so many times. It is
impossible to overestimate such a great help, and the list
would not be so active without him.
I received support from so many users that it is clearly
impossible to be fair when shortlisting a few of them, but
Org’s history would not be complete if the ones above were
not mentioned in this manual.
C.3 List of contributions
- Russel Adams came up with the idea for drawers.
- Suvayu Ali has steadily helped on the mailing list,
providing useful feedback on many features and several
patches.
- Luis Anaya wrote ox-man.el.
- Thomas Baumann wrote org-bbdb.el and
org-mhe.el.
- Michael Brand helped by reporting many bugs and
testing many features. He also implemented the distinction
between empty fields and 0-value fields in Org’s
spreadsheets.
- Christophe Bataillon created the great unicorn logo
that we use on the Org mode website.
- Alex Bochannek provided a patch for rounding
timestamps.
- Jan Böcker wrote
org-docview.el.
- Brad Bozarth showed how to pull RSS feed data into
Org mode files.
- Tom Breton wrote org-choose.el.
- Charles Cave’s suggestion sparked the
implementation of templates for Remember, which are now
templates for capture.
- Pavel Chalmoviansky influenced the agenda treatment
of items with specified time.
- Gregory Chernov patched support for Lisp forms into
table calculations and improved XEmacs compatibility, in
particular by porting nouline.el to XEmacs.
- Sacha Chua suggested copying some linking code from
Planner.
- Toby S. Cubitt contributed to the code for clock
formats.
- Baoqiu Cui contributed the DocBook exporter. It has
been deleted from Org 8.0: you can now export to Texinfo and
export the .texi file to DocBook using
makeinfo.
- Eddward DeVilla proposed and tested checkbox
statistics. He also came up with the idea of properties, and
that there should be an API for them.
- Nick Dokos tracked down several nasty bugs.
- Kees Dullemond used to edit projects lists directly
in HTML and so inspired some of the early development,
including HTML export. He also asked for a way to narrow wide
table columns.
- Jason Dunsmore has been maintaining the Org-Mode
server at Rackspace for several years now. He also sponsored
the hosting costs until Rackspace started to host us for
free.
- Thomas S. Dye contributed documentation on Worg and
helped integrating the Org-Babel documentation into the
manual.
- Christian Egli converted the documentation into
Texinfo format, inspired the agenda, patched CSS formatting
into the HTML exporter, and wrote
org-taskjuggler.el, which has been rewritten by
Nicolas Goaziou as ox-taskjuggler.el for Org
8.0.
- David Emery provided a patch for custom CSS support
in exported HTML agendas.
- Sean Escriva took over MobileOrg development on the
iPhone platform.
- Nic Ferrier contributed mailcap and XOXO
support.
- Miguel A. Figueroa-Villanueva implemented
hierarchical checkboxes.
- John Foerch figured out how to make incremental
search show context around a match in a hidden outline
tree.
- Raimar Finken wrote
org-git-line.el.
- Mikael Fornius works as a mailing list
moderator.
- Austin Frank works as a mailing list moderator.
- Eric Fraga drove the development of BEAMER export
with ideas and testing.
- Barry Gidden did proofreading the manual in
preparation for the book publication through Network Theory
Ltd.
- Niels Giesen had the idea to automatically archive
DONE trees.
- Nicolas Goaziou rewrote much of the plain list code.
He also wrote org-element.el and
org-export.el, which was a huge step forward in
implementing a clean framework for Org exporters.
- Kai Grossjohann pointed out key-binding conflicts
with other packages.
- Brian Gough of Network Theory Ltd publishes the Org
mode manual as a book.
- Bernt Hansen has driven much of the support for
auto-repeating tasks, task state change logging, and the
clocktable. His clear explanations have been critical when we
started to adopt the Git version control system.
- Manuel Hermenegildo has contributed various ideas,
small fixes and patches.
- Phil Jackson wrote org-irc.el.
- Scott Jaderholm proposed footnotes, control over
whitespace between folded entries, and column view for
properties.
- Matt Jones wrote MobileOrg Android.
- Tokuya Kameshima wrote org-wl.el and
org-mew.el.
- Jonathan Leech-Pepin wrote
ox-texinfo.el.
- Shidai Liu ("Leo") asked for embedded LaTeX and
tested it. He also provided frequent feedback and some
patches.
- Matt Lundin has proposed last-row references for
table formulas and named invisible anchors. He has also worked
a lot on the FAQ.
- David Maus wrote org-atom.el, maintains
the issues file for Org, and is a prolific contributor on the
mailing list with competent replies, small fixes and
patches.
- Jason F. McBrayer suggested agenda export to CSV
format.
- Max Mikhanosha came up with the idea of refiling and
sticky agendas.
- Dmitri Minaev sent a patch to set priority limits on
a per-file basis.
- Stefan Monnier provided a patch to keep the
Emacs-Lisp compiler happy.
- Richard Moreland wrote MobileOrg for the
iPhone.
- Rick Moynihan proposed allowing multiple TODO
sequences in a file and being able to quickly restrict the
agenda to a subtree.
- Todd Neal provided patches for links to Info files
and Elisp forms.
- Greg Newman refreshed the unicorn logo into its
current form.
- Tim O’Callaghan suggested in-file links,
search options for general file links, and TAGS.
- Osamu Okano wrote orgcard2ref.pl, a
Perl program to create a text version of the reference
card.
- Takeshi Okano translated the manual and David
O’Toole’s tutorial into Japanese.
- Oliver Oppitz suggested multi-state TODO items.
- Scott Otterson sparked the introduction of
descriptive text for links, among other things.
- Pete Phillips helped during the development of the
TAGS feature, and provided frequent feedback.
- Francesco Pizzolante provided patches that helped
speeding up the agenda generation.
- Martin Pohlack provided the code snippet to bundle
character insertion into bundles of 20 for undo.
- Rackspace.com is hosting our website for free. Thank
you Rackspace!
- T.V. Raman reported bugs and suggested
improvements.
- Matthias Rempe (Oelde) provided ideas, Windows
support, and quality control.
- Paul Rivier provided the basic implementation of
named footnotes. He also acted as mailing list moderator for
some time.
- Kevin Rogers contributed code to access VM files on
remote hosts.
- Frank Ruell solved the mystery of the
keymapp
nil bug, a conflict with allout.el.
- Jason Riedy generalized the send-receive mechanism
for Orgtbl tables with extensive patches.
- Philip Rooke created the Org reference card,
provided lots of feedback, developed and applied standards to
the Org documentation.
- Christian Schlauer proposed angular brackets around
links, among other things.
- Christopher Schmidt reworked
orgstruct-mode so that users can enjoy folding in
non-org buffers by using Org headlines in comments.
- Paul Sexton wrote org-ctags.el.
- Linking to VM/BBDB/Gnus was first inspired by Tom
Shannon’s organizer-mode.el.
- Ilya Shlyakhter proposed the Archive Sibling, line
numbering in literal examples, and remote highlighting for
referenced code lines.
- Stathis Sideris wrote the ditaa.jar
ASCII to PNG converter that is now packaged into Org’s
contrib directory.
- Daniel Sinder came up with the idea of internal
archiving by locking subtrees.
- Dale Smith proposed link abbreviations.
- James TD Smith has contributed a large number of
patches for useful tweaks and features.
- Adam Spiers asked for global linking commands,
inspired the link extension system, added support for mairix,
and proposed the mapping API.
- Ulf Stegemann created the table to translate special
symbols to HTML, LaTeX, UTF-8, Latin-1 and ASCII.
- Andy Stewart contributed code to
org-w3m.el, to copy HTML content with links
transformation to Org syntax.
- David O’Toole wrote
org-publish.el and drafted the manual chapter
about publishing.
- Jambunathan K contributed the ODT exporter and
rewrote the HTML exporter.
- Sebastien Vauban reported many issues with LaTeX and
BEAMER export and enabled source code highlighting in
Gnus.
- Stefan Vollmar organized a video-recorded talk at
the Max-Planck-Institute for Neurology. He also inspired the
creation of a concept index for HTML export.
- Jürgen Vollmer contributed code
generating the table of contents in HTML output.
- Samuel Wales has provided important feedback and bug
reports.
- Chris Wallace provided a patch implementing the
‘QUOTE’ keyword.
- David Wainberg suggested archiving, and improvements
to the linking system.
- Carsten Wimmer suggested some changes and helped fix
a bug in linking to Gnus.
- Roland Winkler requested additional key bindings to
make Org work on a tty.
- Piotr Zielinski wrote org-mouse.el,
proposed agenda blocks and contributed various ideas and code
snippets.